/**
 * copyright (c) 2017-2023 厦门风领科技有限公司
 * https://www.fengling.cn/
 * 
 * CryptoJS工具类
 * zengbinsi
 * 2017-12-19
 * 
 * 支持iOS和WEB平台，Android未测试 2017-12-23
 */

 
export class GGCryptoJS {

    /* 使用方法 https://www.npmjs.com/package/crypto-js */
    
    /**
     * 默认加密的key
     */
    static secret: string = 'U2FsdGVkX19FFjBDia5ba4D4R9ddZO1RqYjzUl6ss6s=';

    /**
     * aes加密
     * @param content 要加密的内容
     * @param key 秘钥
     */
    static aesEncrypt(content, key: string = GGCryptoJS.secret): string {
        return gg.CryptoJS.AES.encrypt(gg.stringifyJSON(content), key).toString();
    }

    /**
     * aes解密
     * @param content 要解密的内容
     * @param key 秘钥
     */
    static aesDecrypt(content: string, key: string = GGCryptoJS.secret): string {
        if(content){
            var bytes  = gg.CryptoJS.AES.decrypt(content, key);
            var bytesStr = bytes.toString(gg.CryptoJS.enc.Utf8);
            bytesStr = bytesStr ? bytesStr : {};
            return gg.parseJSON(bytesStr);
        }
        
    }

}
